export {}

// any类型(强烈不推荐使用) 作用: 逃避ts的类型检查

let obj: any ={
  name: '老韩',
  hobby: '玩游戏,看电影',
  age: 20
}

const fn = (n:any) => {}

// 类型断言 as
// 我们通过id获取一个标签,获取的标签ts推导的时候判断是可以取到任意类型的标签可能是p标签 可能是a标签.....
// 通过id可以获取的dom节点可能是 <a id="link"></a> 也可能是   <p id='link'></p>

// 类型是  HTMLElement | null
// const link = document.getElementById('link')
// a标签的类型是  HTMLAnchorElement | null
// p标签的类型是  HTMLParagraphElement | null
// 关键字 as 后面的类型是一个更加具体的类型（HTMLAnchorElement 是 HTMLElement 的子类型）
// 通过id获取的类型是  Element | null
// 告诉ts检查  我得到的类型肯定是断言的类型,你推导的并不准确,我比你更清楚 
// 获取dom节点的时候 默认推导  跟断言推导类型可能不一样
const link = document.querySelector('#link') as HTMLAnchorElement
link.href
console.log('link', link)

// 想知道原生标签是什么类型通过如下方法传入标签 通过鼠标移动到返回值上面可以看到类型提示
const a =document.querySelector('ul')